package chapter07;

import java.util.ArrayList;
import java.util.Comparator;

public class Java08_Collection_Sort {
    public static void main(String[] args) {
        // TODO 集合 - 比较器
        // 集合对象中存储的数据是有序的（插入顺序）
        // 如何实现大小排序

        ArrayList list = new ArrayList();
        list.add(1);
        list.add(3);
        list.add(2);

        // 1，3，2 => 3,1,2 => 3,2,1
        // 排序需要传递一个实现了比较器的接口类
        list.sort(new NumberComparator());

        System.out.println(list);
    }
}
class NumberComparator implements Comparator<Integer> {
    @Override
    public int compare(Integer o1, Integer o2) {
        // TODO 如果第一个数大于第二个数，返回正数，表示升序
        if (o1 > o2) {
            return 1;
        }
        // TODO 如果第一个数小于第二个数，返回负数，表示降序
        else if (o1 < o2) {
            return -1;
        }
        // TODO 如果第一个数等于第二个数，返回0
        else {
            return 0;
        }

    }
}